package easyValidate

import "net/http"

// 验证器应该能从http.Request中解析出参数结构体并初始化用户传入的结构体进行验证
// 验证器应该能单独验证结构体
type Validator interface {
	BindHttpRequest(req *http.Request, val interface{}) error
	ValidateStruct(val interface{}) error
}

const ValidateTag = "check"

// 针对数字类型
var (
	PARAM_IT  = "it" // 小于
	PARAM_GT = "gt" // 大于
	PARAM_ITE = "ite" // 小于等于
	PARAM_GTE = "gte" // 大于等于
)

// 针对字符串
var (
	PARAM_MAX = "max" // 最大长度
	PARAM_MIN = "min" // 最小长度
	PARAM_LEN = "len" // 指定长度
)

// 公共
var (
	PARAM_SELECT = "select" // 应该为其中之一
)
